#ifndef VEHPLATEUTILS_H
#define VEHPLATEUTILS_H

#include <QObject>

class VehPlateUtils : public QObject
{
    Q_OBJECT
public:
    explicit VehPlateUtils(QObject *parent = 0);
    ~VehPlateUtils();

public:
    /*!
     * \brief 返回车牌颜色代码对应的车牌颜色（字符串）
     */
    static QString getVehPlateColorDesc(int nCode);

    /*!
     * \brief 返回带颜色的全车牌，如"蓝鲁A12345"。
     */
    static QString getVehicleLicencePlateColorAndNumber(int nPlateColor, const QString &sPlateNum);

    /*!
     * \brief 返回车牌数据是否有效，只在车牌颜色正确且车牌长度足够时返回true
     */
    static bool isValidVehPlate(int nPlateColor, const QString &sPlateNum);

    /*!
     * \brief 将全车牌分离成车牌和车牌颜色2部分
     * \param sPlateNum: 分离出的车牌
     * \param sPlateNumWithColor: 带车牌颜色的全车牌，如"蓝鲁A12345"
     * \return 找到颜色时返回0..3，否则返回-1
     */
    static int seprateVehPlateColorAndNum(QString &sPlateNum, const QString &sPlateNumWithColor);

};

#endif // VEHPLATEUTILS_H
